"""
思路：
    从两个字符串找一个长度小的字符串, 以这个小的字符串为基准, 假如str1 是短  str2是长
    再从str1最开始取整个str1的长度去str2中查找, 找到了就返回找到的结果, 没有就str1长度减
    1再的字符串去（所有可能str长度-1的长度都要去str2中查找）, 一直这样找下去直到找到就立马
    返回结果并结束后续查找了。
"""

def findit(str1, str2):
    count = 0  # 计数的, 看效率
    length = len(str1)

    for sublen in range(length, 0, -1):
        for start in range(0, length - sublen + 1):
            substr = str1[start:start+sublen]
            count += 1
            if str2.find(substr) > -1:
                return substr, count

# 失败, 弄不出来
def findit1(str1, str2):
    count = 0
    length = len(str1)

    for sublen in range(1, length+1):
        for start in range(0, length-sublen+1):
            substr = str1[start:start+sublen]
            count += 1
            if str2.find(substr) > -1:
                findit1(str1[start+1:], str2)


if __name__ == "__main__":
    print(findit1("abdcefkslkfs", "sbdiiefsdjfsabdcefkslkijd"))